package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 仪器对外服务对象 lab_instrumentation_foreign_service
 * 
 * @author lzlong
 * @date 2022-04-29
 */
public class LabInstrumentationForeignService extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 实验仪器id */
    @Excel(name = "实验仪器id")
    private Long instrumentationId;

    /** 填报记录 */
    @Excel(name = "填报记录")
    private String fillRecord;

    /** 服务期间 */
    @JsonFormat(pattern = "yyyy-MM",timezone="GMT+8")
    @Excel(name = "服务开始日期")
    private Date servicePeriodStart;
    /** 服务期间 */
    @JsonFormat(pattern = "yyyy-MM",timezone="GMT+8")
    @Excel(name = "服务结束日期")
    private Date servicePeriodEnd;
    /** 服务期间 */
    @JsonFormat(pattern = "yyyy年MM月")
    @Excel(name = "服务期间字符串")
    private String servicePeriodStr;

    /** 有效运行时长(小时) */
    @Excel(name = "有效运行时长(小时)")
    private BigDecimal effectiveRunningTime;

    /** 对外服务时长(小时) */
    @Excel(name = "对外服务时长(小时)")
    private BigDecimal externalServiceTime;

    /** 服务单位数(家) */
    @Excel(name = "服务单位数(家)")
    private Integer serviceUnitNumber;

    /** 服务科研单位数(家) */
    @Excel(name = "服务科研单位数(家)")
    private Integer serviceResearchUnitNumber;

    /** 服务企业数(家) */
    @Excel(name = "服务企业数(家)")
    private Integer serviceCompaniesNumber;

    /** 服务项次数(次) */
    @Excel(name = "服务项次数(次)")
    private Integer serviceItemNumber;

    /** 服务单位内部(次) */
    @Excel(name = "服务单位内部(次)")
    private Integer serviceUnitInside;

    /** 服务单位外部(次) */
    @Excel(name = "服务单位外部(次)")
    private Integer serviceUnitOutside;

    /** 检测样品数(个) */
    @Excel(name = "检测样品数(个)")
    private Integer samplesTestedNumber;

    /** 服务收入(万元) */
    @Excel(name = "服务收入(万元)")
    private BigDecimal serviceRevenue;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdBy;

    public String getServicePeriodStr() {
        return servicePeriodStr;
    }

    public void setServicePeriodStr(String servicePeriodStr) {
        this.servicePeriodStr = servicePeriodStr;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setInstrumentationId(Long instrumentationId) 
    {
        this.instrumentationId = instrumentationId;
    }

    public Long getInstrumentationId() 
    {
        return instrumentationId;
    }
    public void setFillRecord(String fillRecord)
    {
        this.fillRecord = fillRecord;
    }

    public String getFillRecord()
    {
        return fillRecord;
    }


    public Date getServicePeriodStart() {
		return servicePeriodStart;
	}

	public void setServicePeriodStart(Date servicePeriodStart) {
		this.servicePeriodStart = servicePeriodStart;
	}

	public Date getServicePeriodEnd() {
		return servicePeriodEnd;
	}

	public void setServicePeriodEnd(Date servicePeriodEnd) {
		this.servicePeriodEnd = servicePeriodEnd;
	}

	public void setEffectiveRunningTime(BigDecimal effectiveRunningTime)
    {
        this.effectiveRunningTime = effectiveRunningTime;
    }

    public BigDecimal getEffectiveRunningTime() 
    {
        return effectiveRunningTime;
    }
    public void setExternalServiceTime(BigDecimal externalServiceTime) 
    {
        this.externalServiceTime = externalServiceTime;
    }

    public BigDecimal getExternalServiceTime() 
    {
        return externalServiceTime;
    }
    public void setServiceUnitNumber(Integer serviceUnitNumber) 
    {
        this.serviceUnitNumber = serviceUnitNumber;
    }

    public Integer getServiceUnitNumber() 
    {
        return serviceUnitNumber;
    }
    public void setServiceResearchUnitNumber(Integer serviceResearchUnitNumber) 
    {
        this.serviceResearchUnitNumber = serviceResearchUnitNumber;
    }

    public Integer getServiceResearchUnitNumber() 
    {
        return serviceResearchUnitNumber;
    }
    public void setServiceCompaniesNumber(Integer serviceCompaniesNumber) 
    {
        this.serviceCompaniesNumber = serviceCompaniesNumber;
    }

    public Integer getServiceCompaniesNumber() 
    {
        return serviceCompaniesNumber;
    }
    public void setServiceItemNumber(Integer serviceItemNumber) 
    {
        this.serviceItemNumber = serviceItemNumber;
    }

    public Integer getServiceItemNumber() 
    {
        return serviceItemNumber;
    }
    public void setServiceUnitInside(Integer serviceUnitInside) 
    {
        this.serviceUnitInside = serviceUnitInside;
    }

    public Integer getServiceUnitInside() 
    {
        return serviceUnitInside;
    }
    public void setServiceUnitOutside(Integer serviceUnitOutside) 
    {
        this.serviceUnitOutside = serviceUnitOutside;
    }

    public Integer getServiceUnitOutside() 
    {
        return serviceUnitOutside;
    }
    public void setSamplesTestedNumber(Integer samplesTestedNumber) 
    {
        this.samplesTestedNumber = samplesTestedNumber;
    }

    public Integer getSamplesTestedNumber() 
    {
        return samplesTestedNumber;
    }
    public void setServiceRevenue(BigDecimal serviceRevenue) 
    {
        this.serviceRevenue = serviceRevenue;
    }

    public BigDecimal getServiceRevenue() 
    {
        return serviceRevenue;
    }
    public void setCreatedTime(Date createdTime) 
    {
        this.createdTime = createdTime;
    }

    public Date getCreatedTime() 
    {
        return createdTime;
    }
    public void setCreatedBy(String createdBy) 
    {
        this.createdBy = createdBy;
    }

    public String getCreatedBy() 
    {
        return createdBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("instrumentationId", getInstrumentationId())
            .append("fillRecord", getFillRecord())
            .append("effectiveRunningTime", getEffectiveRunningTime())
            .append("externalServiceTime", getExternalServiceTime())
            .append("serviceUnitNumber", getServiceUnitNumber())
            .append("serviceResearchUnitNumber", getServiceResearchUnitNumber())
            .append("serviceCompaniesNumber", getServiceCompaniesNumber())
            .append("serviceItemNumber", getServiceItemNumber())
            .append("serviceUnitInside", getServiceUnitInside())
            .append("serviceUnitOutside", getServiceUnitOutside())
            .append("samplesTestedNumber", getSamplesTestedNumber())
            .append("serviceRevenue", getServiceRevenue())
            .append("createdTime", getCreatedTime())
            .append("createdBy", getCreatedBy())
            .toString();
    }
}
